package org.jeecg.modules.demo.qingjia.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableLogic;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 请假表
 * @Author: jeecg-boot
 * @Date:   2023-05-08
 * @Version: V1.0
 */
@Data
@TableName("lwgy_qingjia")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="lwgy_qingjia对象", description="请假表")
public class LwgyQingJia implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private java.lang.String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private java.util.Date updateTime;
	/**学生id*/
	/*@Excel(name = "学生id", width = 15)*/
    @ApiModelProperty(value = "学生id")
    private java.lang.String studentId;
	/**学号*/
	@Excel(name = "学号", width = 15)
    @ApiModelProperty(value = "学号")
    private java.lang.String studentNumber;
    /**学生姓名*/
    @Excel(name = "学生姓名", width = 15)
    @ApiModelProperty(value = "学生姓名")
    private java.lang.String studentName;
    /**性别*/
    @Excel(name = "性别", width = 15,dicCode = "sex")
    @Dict(dicCode = "sex")
    @ApiModelProperty(value = "性别")
    private java.lang.String roomSex;
	/**校区*/
    @Excel(name = "校区", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @ApiModelProperty(value = "校区")
    private java.lang.String studentCampus;
    /**院系*/
    @Excel(name = "院系", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @ApiModelProperty(value = "院系")
    private String studentCollege;
    /**专业*/
    @Excel(name = "专业", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @ApiModelProperty(value = "专业")
    private String studentMajor;
    /**班级*/
    @Excel(name = "班级", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @ApiModelProperty(value = "班级")
    private String studentClass;
    /**年级*/
    @Excel(name = "年级", width = 15,dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    @Dict(dictTable = "lwgy_base_school",dicCode = "id",dicText = "name")
    private String studentYear;

    /**校区*/
    @Excel(name = "校区", width = 15,dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @Dict(dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "校区")
    private String campusId;
    /**楼宇*/
    @Excel(name = "楼宇", width = 15,dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @Dict(dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "楼宇")
    private String buildingId;
    /**单元*/
    @Excel(name = "单元", width = 15,dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @Dict(dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "单元")
    private String unitId;
    /**楼层*/
    @Excel(name = "楼层", width = 15,dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @Dict(dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "楼层")
    private String layerId;
    /**房间*/
    @Excel(name = "房间", width = 15,dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @Dict(dictTable = "lwgy_base_apartment", dicText = "name", dicCode = "id")
    @ApiModelProperty(value = "房间")
    private String roomId;
	/**请假分类*/
	@Excel(name = "请假分类", width = 15,dicCode = "qing_stu_behavior")
    @ApiModelProperty(value = "请假分类")
    @Dict(dicCode = "qing_stu_behavior")
    private java.lang.String behavioral;
	/**原因*/
	@Excel(name = "原因", width = 15)
    @ApiModelProperty(value = "原因")
    private java.lang.String reason;
	/**处理状态*/
	@Excel(name = "处理状态", width = 15,dicCode = "processing_state")
    @ApiModelProperty(value = "处理状态")
    @Dict(dicCode = "processing_state")
    private java.lang.String processingState;
	/**姓名*/
	/*@Excel(name = "姓名", width = 15)*/
    @ApiModelProperty(value = "姓名")
    private java.lang.String name;
	/**来自*/
	/*@Excel(name = "推送人", width = 15)*/
    @ApiModelProperty(value = "推送人")
    private java.lang.String fromUser;
	/**推给谁*/
	/*@Excel(name = "推给谁", width = 15)*/
    @ApiModelProperty(value = "推给谁")
    private java.lang.String toUser;
	/**处理结果*/
    @Excel(name = "处理结果", width = 15,dicCode = "hotel_his_state")
    @Dict(dicCode = "hotel_his_state")
    @ApiModelProperty(value = "处理结果")
    private java.lang.String processingResult;
    /** 回执*/
    @Excel(name = "处理回执", width = 15)
    @ApiModelProperty(value = "处理回执")
    private String refuseReason;
	/**0正常1删除*/
	/*@Excel(name = "0正常1删除", width = 15)*/
    @ApiModelProperty(value = "0正常1删除")
    @TableLogic
    private java.lang.String delFlag;
    //3：学生提交 2：辅导员提交  1：管理员已经审核完毕 0：驳回申请
    /*@Excel(name = "审核流程", width = 15)*/
    @ApiModelProperty(value = "审核流程")
    private String auditProcess;

    @Excel(name = "乘车方式", width = 15,dicCode = "riding_mode")
    @Dict(dicCode = "riding_mode")
    @ApiModelProperty(value = "乘车方式")
    private String ridingMode;

    @Excel(name = "目的地", width = 15)
    @ApiModelProperty(value = "目的地")
    private String address;

    @Excel(name = "请假方式", width = 15,dicCode = "leave_method")
    @Dict(dicCode = "leave_method")
    @ApiModelProperty(value = "请假方式")
    private String leaveMethod;

    @Excel(name = "状态", width = 15,dicCode = "qing_state")
    @Dict(dicCode = "qing_state")
    @ApiModelProperty(value = "是否销假")
    private String qingState;

    @Excel(name = "销假原因", width = 15)
    @ApiModelProperty(value = "销假原因")
    private String xjCause;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    @Excel(name = "申请时间", width = 15,format = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date createTime;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    @Excel(name = "开始时间", width = 15,format = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date startTime;
    /**创建日期*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    @Excel(name = "结束时间", width = 15,format = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date endTime;
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "销假时间")
    @Excel(name = "销假时间", width = 15,format = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date xjTime;
}
